Skip to content

Conversation

@18202781743
Copy link
Contributor

  1. Replaced PROJECT_VERSION_MAJOR-based Qt version detection with
    explicit DTK5/DTK6 build option
  2. Added DTK5 CMake option (default ON) to control DTK5 vs DTK6 builds
  3. Updated DTK_VERSION calculation to use DTK_VERSION_MAJOR from build
    option instead of PROJECT_VERSION_MAJOR
  4. Modified CMake logic to conditionally build wayland plugin only for
    DTK5 builds
  5. Restructured debian/control to support both DTK5 and DTK6 packages
    with Build-Profiles
  6. Added new dde-qt6xcb-plugin package for DTK6 builds
  7. Implemented separate build directories (build-dtk5, build-dtk6) in
    debian/rules for parallel builds
  8. Added build profile support (nodtk5, nodtk6) to control which
    packages are built
  9. Updated package descriptions to clearly indicate DTK5/Qt5 vs DTK6/
    Qt6 versions

Log: Updated build system to support both DTK5 and DTK6 versions

Influence:

  1. Test building with default settings (DTK5=ON) to ensure DTK5 builds
    work
  2. Test building with DTK5=OFF to verify DTK6 builds work correctly
  3. Verify that wayland plugin is only built for DTK5 builds
  4. Test package generation with different build profiles (nodtk5,
    nodtk6)
  5. Verify that both dde-qt5xcb-plugin and dde-qt6xcb-plugin packages are
    created correctly
  6. Test installation of both DTK5 and DTK6 packages on appropriate
    systems
  7. Verify plugin paths are correct (Qt5 vs Qt6 plugin directories)

refactor: 统一DTK5/DTK6构建系统

  1. 将基于PROJECT_VERSION_MAJOR的Qt版本检测改为显式的DTK5/DTK6构建选项
  2. 添加DTK5 CMake选项(默认开启)来控制DTK5与DTK6构建
  3. 更新DTK_VERSION计算,使用构建选项中的DTK_VERSION_MAJOR而非
    PROJECT_VERSION_MAJOR
  4. 修改CMake逻辑,仅对DTK5构建有条件地构建wayland插件
  5. 重构debian/control以支持带有Build-Profiles的DTK5和DTK6包
  6. 为DTK6构建添加新的dde-qt6xcb-plugin包
  7. 在debian/rules中实现独立的构建目录(build-dtk5, build-dtk6)用于并行
    构建
  8. 添加构建配置文件支持(nodtk5, nodtk6)来控制构建哪些包
  9. 更新包描述以清晰标明DTK5/Qt5与DTK6/Qt6版本

Log: 更新构建系统以支持DTK5和DTK6版本

Influence:

  1. 使用默认设置(DTK5=ON)测试构建,确保DTK5构建正常工作
  2. 使用DTK5=OFF测试构建,验证DTK6构建正确工作
  3. 验证wayland插件仅对DTK5构建进行构建
  4. 使用不同的构建配置文件(nodtk5, nodtk6)测试包生成
  5. 验证dde-qt5xcb-plugin和dde-qt6xcb-plugin包都正确创建
  6. 在适当的系统上测试DTK5和DTK6包的安装
  7. 验证插件路径正确(Qt5与Qt6插件目录)

deepin-ci-robot added a commit to linuxdeepin/qt6platform-plugins that referenced this pull request Dec 29, 2025
Synchronize source files from linuxdeepin/qt5platform-plugins.

Source-pull-request: linuxdeepin/qt5platform-plugins#316
@github-actions
Copy link
Contributor

  • 检测到debian目录文件有变更: debian/dde-qt6xcb-plugin.install,debian/control,debian/rules

@github-actions
Copy link
Contributor

  • 敏感词检查失败, 检测到1个文件存在敏感词
详情
{
    "CMakeLists.txt": [
        {
            "line": "    HOMEPAGE_URL \"https://github.com/linuxdeepin/qt5platform-plugins\"",
            "line_number": 13,
            "rule": "S35",
            "reason": "Url link | 508b5ed804"
        }
    ]
}

deepin-ci-robot added a commit to linuxdeepin/qt6platform-plugins that referenced this pull request Dec 30, 2025
Synchronize source files from linuxdeepin/qt5platform-plugins.

Source-pull-request: linuxdeepin/qt5platform-plugins#316
@github-actions
Copy link
Contributor

  • 检测到debian目录文件有变更: debian/dde-qt6xcb-plugin.install,debian/control,debian/rules

@github-actions
Copy link
Contributor

  • 敏感词检查失败, 检测到1个文件存在敏感词
详情
{
    "CMakeLists.txt": [
        {
            "line": "    HOMEPAGE_URL \"https://github.com/linuxdeepin/qt5platform-plugins\"",
            "line_number": 13,
            "rule": "S35",
            "reason": "Url link | 508b5ed804"
        }
    ]
}

deepin-ci-robot added a commit to linuxdeepin/qt6platform-plugins that referenced this pull request Dec 30, 2025
Synchronize source files from linuxdeepin/qt5platform-plugins.

Source-pull-request: linuxdeepin/qt5platform-plugins#316
@github-actions
Copy link
Contributor

  • 检测到debian目录文件有变更: debian/dde-qt6xcb-plugin.install,debian/control,debian/rules

@github-actions
Copy link
Contributor

  • 敏感词检查失败, 检测到1个文件存在敏感词
详情
{
    "CMakeLists.txt": [
        {
            "line": "    HOMEPAGE_URL \"https://github.com/linuxdeepin/qt5platform-plugins\"",
            "line_number": 13,
            "rule": "S35",
            "reason": "Url link | 508b5ed804"
        }
    ]
}

mhduiy
mhduiy previously approved these changes Dec 31, 2025
deepin-ci-robot added a commit to linuxdeepin/qt6platform-plugins that referenced this pull request Dec 31, 2025
Synchronize source files from linuxdeepin/qt5platform-plugins.

Source-pull-request: linuxdeepin/qt5platform-plugins#316
@github-actions
Copy link
Contributor

  • 检测到debian目录文件有变更: debian/dde-qt6xcb-plugin.install,debian/control,debian/rules

@github-actions
Copy link
Contributor

  • 敏感词检查失败, 检测到2个文件存在敏感词
详情
{
    "CMakeLists.txt": [
        {
            "line": "    HOMEPAGE_URL \"https://github.com/linuxdeepin/qt5platform-plugins\"",
            "line_number": 13,
            "rule": "S35",
            "reason": "Url link | 508b5ed804"
        }
    ],
    "archlinux/PKGBUILD": [
        {
            "line": "url=\"https://github.com/linuxdeepin/qt5platform-plugins\"",
            "line_number": 10,
            "rule": "S35",
            "reason": "Url link | 508b5ed804"
        }
    ]
}

qtbase5-private-dev <!nodtk5>,
libqt5x11extras5-dev <!nodtk5>,
libqt5opengl5-dev <!nodtk5>,
qtwayland5-private-dev | libqt5waylandclient5-dev <!nodtk5>,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

这种写法能达到预期的效果吗?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

没试过,AI写的,要相信它,

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

又问ai确认了下,是可以的,

1. Replaced PROJECT_VERSION_MAJOR-based Qt version detection with
explicit DTK5/DTK6 build option
2. Added DTK5 CMake option (default ON) to control DTK5 vs DTK6 builds
3. Updated DTK_VERSION calculation to use DTK_VERSION_MAJOR from build
option instead of PROJECT_VERSION_MAJOR
4. Modified CMake logic to conditionally build wayland plugin only for
DTK5 builds
5. Restructured debian/control to support both DTK5 and DTK6 packages
with Build-Profiles
6. Added new dde-qt6xcb-plugin package for DTK6 builds
7. Implemented separate build directories (build-dtk5, build-dtk6) in
debian/rules for parallel builds
8. Added build profile support (nodtk5, nodtk6) to control which
packages are built
9. Updated package descriptions to clearly indicate DTK5/Qt5 vs DTK6/
Qt6 versions

Log: Updated build system to support both DTK5 and DTK6 versions

Influence:
1. Test building with default settings (DTK5=ON) to ensure DTK5 builds
work
2. Test building with DTK5=OFF to verify DTK6 builds work correctly
3. Verify that wayland plugin is only built for DTK5 builds
4. Test package generation with different build profiles (nodtk5,
nodtk6)
5. Verify that both dde-qt5xcb-plugin and dde-qt6xcb-plugin packages are
created correctly
6. Test installation of both DTK5 and DTK6 packages on appropriate
systems
7. Verify plugin paths are correct (Qt5 vs Qt6 plugin directories)

refactor: 统一DTK5/DTK6构建系统

1. 将基于PROJECT_VERSION_MAJOR的Qt版本检测改为显式的DTK5/DTK6构建选项
2. 添加DTK5 CMake选项(默认开启)来控制DTK5与DTK6构建
3. 更新DTK_VERSION计算,使用构建选项中的DTK_VERSION_MAJOR而非
PROJECT_VERSION_MAJOR
4. 修改CMake逻辑,仅对DTK5构建有条件地构建wayland插件
5. 重构debian/control以支持带有Build-Profiles的DTK5和DTK6包
6. 为DTK6构建添加新的dde-qt6xcb-plugin包
7. 在debian/rules中实现独立的构建目录(build-dtk5, build-dtk6)用于并行
构建
8. 添加构建配置文件支持(nodtk5, nodtk6)来控制构建哪些包
9. 更新包描述以清晰标明DTK5/Qt5与DTK6/Qt6版本

Log: 更新构建系统以支持DTK5和DTK6版本

Influence:
1. 使用默认设置(DTK5=ON)测试构建,确保DTK5构建正常工作
2. 使用DTK5=OFF测试构建,验证DTK6构建正确工作
3. 验证wayland插件仅对DTK5构建进行构建
4. 使用不同的构建配置文件(nodtk5, nodtk6)测试包生成
5. 验证dde-qt5xcb-plugin和dde-qt6xcb-plugin包都正确创建
6. 在适当的系统上测试DTK5和DTK6包的安装
7. 验证插件路径正确(Qt5与Qt6插件目录)
deepin-ci-robot added a commit to linuxdeepin/qt6platform-plugins that referenced this pull request Jan 6, 2026
Synchronize source files from linuxdeepin/qt5platform-plugins.

Source-pull-request: linuxdeepin/qt5platform-plugins#316
@github-actions
Copy link
Contributor

github-actions bot commented Jan 6, 2026

  • 检测到debian目录文件有变更: debian/dde-qt6xcb-plugin.install,debian/control,debian/rules

@deepin-ci-robot
Copy link
Contributor

deepin pr auto review

我来对这个diff进行代码审查:

  1. CMakeLists.txt 改进建议:

语法逻辑:

  • 代码逻辑清晰,通过DTK5选项来控制构建DTK5或DTK6版本是合理的
  • 版本号处理方式改进后更加规范

代码质量:

  • 建议将版本号相关的变量定义放在文件开头,便于维护
  • message命令使用STATUS级别更合适,已经修改

代码性能:

  • 没有明显的性能问题

代码安全:

  • 无明显安全问题
  1. PKGBUILD 改进建议:

语法逻辑:

  • 添加了DDTK5=ON选项,逻辑正确

代码质量:

  • 建议统一使用空格缩进,当前混用了空格和tab
  1. debian/control 改进建议:

语法逻辑:

  • 使用Build-Profiles来控制不同版本的构建是合理的
  • 包依赖关系定义清晰

代码质量:

  • 建议将相同Build-Profiles的依赖项分组,提高可读性
  • 包描述信息更加具体,有利于用户理解
  1. debian/rules 改进建议:

语法逻辑:

  • 使用DPKG_EXPORT_BUILDFLAGS是好的实践
  • 通过BUILD_DTK5/BUILD_DTK6变量控制构建流程逻辑清晰

代码质量:

  • 代码结构清晰,各个override目标定义完整
  • 安全编译参数设置合理
  1. tests/CMakeLists.txt 改进建议:

语法逻辑:

  • 将sanitize选项限制在Debug模式下是合理的
  • 添加了add_test命令,完善了测试配置

代码质量:

  • 条件编译结构清晰
  • 建议将sanitize相关的配置集中在一起

总体建议:

  1. 所有文件中的缩进应该统一使用空格或tab
  2. 版本号相关的变量定义建议集中管理
  3. 建议添加更多的注释说明关键配置的作用
  4. 考虑添加CI配置文件来自动化构建和测试流程

这些改动整体上提高了代码的可维护性和灵活性,特别是在支持DTK5和DTK6双版本构建方面做得很好。

@github-actions
Copy link
Contributor

github-actions bot commented Jan 6, 2026

  • 敏感词检查失败, 检测到2个文件存在敏感词
详情
{
    "CMakeLists.txt": [
        {
            "line": "    HOMEPAGE_URL \"https://github.com/linuxdeepin/qt5platform-plugins\"",
            "line_number": 13,
            "rule": "S35",
            "reason": "Url link | 508b5ed804"
        }
    ],
    "archlinux/PKGBUILD": [
        {
            "line": "url=\"https://github.com/linuxdeepin/qt5platform-plugins\"",
            "line_number": 10,
            "rule": "S35",
            "reason": "Url link | 508b5ed804"
        }
    ]
}

@18202781743 18202781743 requested a review from asterwyx January 6, 2026 03:13
@deepin-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: 18202781743, mhduiy

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@18202781743 18202781743 merged commit 0966c9b into linuxdeepin:master Jan 6, 2026
17 of 19 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants